using Os.Domain;
using System;
using System.Web.Mvc;
namespace Os.WebUI.Controllers
{
	public class EquipamentoController : Controller
	{
		public ActionResult Index()
		{
			return View(Equipamento.CarregarTodos());
		}
		public ActionResult Detalhes(int id)
		{
			return View(new Equipamento(id));
		}
		public ActionResult Novo()
		{
			ViewData["Clientes"] = Cliente.CarregarTodos();
			Equipamento equipamento = new Equipamento();
			equipamento.Data = DateTime.Now;
			return View(equipamento);
		}
		[HttpPost]
		public ActionResult Novo(Equipamento objEquipamento, FormCollection collection)
		{
			ActionResult result;
			try
			{
				objEquipamento.Cliente = Cliente.CarregarObjeto(Convert.ToInt32(collection["Cliente"]));
				objEquipamento.Salvar();
				result = RedirectToAction("Index");
			}
			catch (Exception ex)
			{
				ViewData["Result"] = "Erro encontrado: " + ex.Message;
				result = View(objEquipamento);
			}
			return result;
		}
		public ActionResult Editar(int id)
		{
			ViewData["Clientes"] = Cliente.CarregarTodos();
			return View(new Equipamento(id));
		}
		[HttpPost]
		public ActionResult Editar(int id, FormCollection collection, Equipamento objUpdEquipamento)
		{
			Equipamento equipamento = new Equipamento(id);
			ActionResult result;
			try
			{
				equipamento.Data = objUpdEquipamento.Data;
				equipamento.Descricao = objUpdEquipamento.Descricao;
				equipamento.Localizacao = objUpdEquipamento.Localizacao;
				equipamento.Marca = objUpdEquipamento.Marca;
				equipamento.Modelo = objUpdEquipamento.Modelo;
				equipamento.Observacao = objUpdEquipamento.Observacao;
				equipamento.So = objUpdEquipamento.So;
				equipamento.Cliente = Cliente.CarregarObjeto(Convert.ToInt32(collection["Cliente"]));
				equipamento.Salvar();
				result = RedirectToAction("Index");
			}
			catch (Exception ex)
			{
				ViewData["result"] = "Erro encontrado: " + ex.Message;
				result = View(equipamento);
			}
			return result;
		}
	}
}
